home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / lib / python2.4 / distutils / command / bdist_dumb.pyo (.txt) < prev    next >
Python Compiled Bytecode  |  2005-10-18  |  4KB  |  92 lines

  1. # Source Generated with Decompyle++
  2. # File: in.pyo (Python 2.4)
  3.  
  4. '''distutils.command.bdist_dumb
  5.  
  6. Implements the Distutils \'bdist_dumb\' command (create a "dumb" built
  7. distribution -- i.e., just an archive to be unpacked under $prefix or
  8. $exec_prefix).'''
  9. __revision__ = '$Id: bdist_dumb.py,v 1.25 2004/11/10 22:23:14 loewis Exp $'
  10. import os
  11. from distutils.core import Command
  12. from distutils.util import get_platform
  13. from distutils.dir_util import create_tree, remove_tree, ensure_relative
  14. from distutils.errors import *
  15. from distutils import log
  16.  
  17. class bdist_dumb(Command):
  18.     description = 'create a "dumb" built distribution'
  19.     user_options = [
  20.         ('bdist-dir=', 'd', 'temporary directory for creating the distribution'),
  21.         ('plat-name=', 'p', 'platform name to embed in generated filenames (default: %s)' % get_platform()),
  22.         ('format=', 'f', 'archive format to create (tar, ztar, gztar, zip)'),
  23.         ('keep-temp', 'k', 'keep the pseudo-installation tree around after ' + 'creating the distribution archive'),
  24.         ('dist-dir=', 'd', 'directory to put final built distributions in'),
  25.         ('skip-build', None, 'skip rebuilding everything (for testing/debugging)'),
  26.         ('relative', None, 'build the archive using relative paths(default: false)')]
  27.     boolean_options = [
  28.         'keep-temp',
  29.         'skip-build',
  30.         'relative']
  31.     default_format = {
  32.         'posix': 'gztar',
  33.         'nt': 'zip',
  34.         'os2': 'zip' }
  35.     
  36.     def initialize_options(self):
  37.         self.bdist_dir = None
  38.         self.plat_name = None
  39.         self.format = None
  40.         self.keep_temp = 0
  41.         self.dist_dir = None
  42.         self.skip_build = 0
  43.         self.relative = 0
  44.  
  45.     
  46.     def finalize_options(self):
  47.         if self.bdist_dir is None:
  48.             bdist_base = self.get_finalized_command('bdist').bdist_base
  49.             self.bdist_dir = os.path.join(bdist_base, 'dumb')
  50.         
  51.         if self.format is None:
  52.             
  53.             try:
  54.                 self.format = self.default_format[os.name]
  55.             except KeyError:
  56.                 raise DistutilsPlatformError, ("don't know how to create dumb built distributions " + 'on platform %s') % os.name
  57.             except:
  58.                 None<EXCEPTION MATCH>KeyError
  59.             
  60.  
  61.         None<EXCEPTION MATCH>KeyError
  62.         self.set_undefined_options('bdist', ('dist_dir', 'dist_dir'), ('plat_name', 'plat_name'))
  63.  
  64.     
  65.     def run(self):
  66.         if not self.skip_build:
  67.             self.run_command('build')
  68.         
  69.         install = self.reinitialize_command('install', reinit_subcommands = 1)
  70.         install.root = self.bdist_dir
  71.         install.skip_build = self.skip_build
  72.         install.warn_dir = 0
  73.         log.info('installing to %s' % self.bdist_dir)
  74.         self.run_command('install')
  75.         archive_basename = '%s.%s' % (self.distribution.get_fullname(), self.plat_name)
  76.         if os.name == 'os2':
  77.             archive_basename = archive_basename.replace(':', '-')
  78.         
  79.         pseudoinstall_root = os.path.join(self.dist_dir, archive_basename)
  80.         if not self.relative:
  81.             archive_root = self.bdist_dir
  82.         elif self.distribution.has_ext_modules() and install.install_base != install.install_platbase:
  83.             raise DistutilsPlatformError, "can't make a dumb built distribution where base and platbase are different (%s, %s)" % (repr(install.install_base), repr(install.install_platbase))
  84.         else:
  85.             archive_root = os.path.join(self.bdist_dir, ensure_relative(install.install_base))
  86.         self.make_archive(pseudoinstall_root, self.format, root_dir = archive_root)
  87.         if not self.keep_temp:
  88.             remove_tree(self.bdist_dir, dry_run = self.dry_run)
  89.         
  90.  
  91.  
  92.